SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 52667: A SAS® 9.4 Environment Manager agent cannot be registered into the SAS® 9.4 Environment Manager with a specific user account

DetailsAboutRate It

You cannot register a SAS Environment Manager agent into SAS Environment Manager services using a specific user account. This problem occurs in Microsoft Windows operating environments that enable you to configure external an external Windows account that includes the domain name (for example, domain-name\user1). However, the Hyperic system does not allow you to create a new user account in the domain-name\user1 format when you try to integrate the Hyperic authentication process into a single sign-on process.

When this problem occurs, the following errors are generated:

In the SAS Environment Manager agent log:

07-03-2014 16:41:05,471 EST DEBUG [main] [DbKeyStore@60] could not instantiate DbKeystoreManager class: java.lang.reflect.InvocationTargetException
java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.hyperic.util.security.DbKeyStore.getInstance(DbKeyStore.java:58)
    at org.hyperic.util.security.KeystoreManager.getKeyStore(KeystoreManager.java:94)
    at org.hyperic.util.security.DefaultSSLProviderImpl.(DefaultSSLProviderImpl.java:99)
    at org.hyperic.hq.bizapp.agent.client.SecureAgentConnection.getSocket(SecureAgentConnection.java:104)
    at org.hyperic.hq.agent.client.AgentConnection.sendCommandHeadersWithRetries(AgentConnection.java:197)
    at org.hyperic.hq.agent.client.AgentConnection.sendCommandHeaders(AgentConnection.java:175)
    at org.hyperic.hq.agent.client.AgentConnection.sendCommandHeaders(AgentConnection.java:164)
    at org.hyperic.hq.agent.client.AgentConnection.sendCommand(AgentConnection.java:116)
    at org.hyperic.hq.bizapp.agent.client.CommandsClient.getProviderInfo(CommandsClient.java:69)
    at org.hyperic.hq.bizapp.agent.client.AgentClient.cmdSetupIfNoProvider(AgentClient.java:541)
    at org.hyperic.hq.bizapp.agent.client.AgentClient.main(AgentClient.java:1412)
Caused by: java.lang.NullPointerException
    at org.hyperic.hq.context.Bootstrap.getBean(Bootstrap.java:69)
    . . . 15 more lines. . . 

In the SAS Environment Manager server log:

07-03-2014 16:41:06,223 EST INFO  [ping-0] [org.hyperic.lather.server.LatherServlet@395] Starting Lather Thread Monitor
07-03-2014 16:41:07,317 EST INFO  [userIsValid-2] [org.hibernate.cache.StandardQueryCache@52] starting query cache at region: AuthzSubject.findByAuth
07-03-2014 16:41:07,984 EST WARN  [registerAgent-3] [org.hyperic.hq.bizapp.server.session.LatherDispatcherImpl@209] Application exception when 'net\svc_ikm_sasuru' tried to register an Agent @ 20.500.4.999
org.hyperic.hq.auth.shared.SubjectNotFoundException: Can't find subject: name=net\svc_ikm_sasuru,authDsn=CAM
    at org.hyperic.hq.authz.server.session.AuthzSubjectManagerImpl.findSubjectByAuth(AuthzSubjectManagerImpl.java:110)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:601)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
    at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:80)
    at org.hyperic.hq.monitor.aop.aspects.PerformanceMonitor.monitorServiceMethod(PerformanceMonitor.java:84)
    at sun.reflect.GeneratedMethodAccessor143.invoke(Unknown Source)

The legacy format (domain-name\user1) was used in situations that predated Microsoft Windows 2000. However, the account is established in SAS Environment Manager using the newer User Principal Name format. That format is what is passed when from the logon manager when you log on. Consequently, the SAS Environment Manager agent credentials also need to match the newer format in the agent.properties file.

Therefore, in order for an external active–directory account to be used with SAS Environment Manager, you must specify the external name in the SAS® Deployment Wizard by using the User Principal Name format, as shown below:

user-ID@company.com


Operating System and Release Information

Product FamilyProductSystemProduct ReleaseSAS Release
ReportedFixed*ReportedFixed*
SAS SystemSAS Environment ManagerMicrosoft® Windows® for x642.12.59.4 TS1M09.4 TS1M3
64-bit Enabled AIX2.12.59.4 TS1M09.4 TS1M3
64-bit Enabled Solaris2.12.59.4 TS1M09.4 TS1M3
HP-UX IPF2.12.59.4 TS1M09.4 TS1M3
Linux for x642.12.59.4 TS1M09.4 TS1M3
Solaris for x642.12.59.4 TS1M09.4 TS1M3
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.